#include<iostream>
#include<thread>
#include <mutex>

std::mutex mtx; // 全局互斥锁
int shared_data = 0; // 共享数据

void thread_function() {
    mtx.lock();     // 加锁
    ++shared_data;  // 修改共享数据
    std::cout << "Shared data: "<< shared_data<< std::endl;
    mtx.unlock();   // 释放锁
}

int main() {
    std::thread t1(thread_function);
    std::thread t2(thread_function);

    t1.join();
    t2.join();

    return 0;
}